// <copyright file="OversBowledTest.cs" company="Open Source"></copyright>

using System;
using _22yards.Core;
using Microsoft.Pex.Framework;
using Microsoft.Pex.Framework.Validation;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace _22yards.Core
{
    [TestClass]
    [PexClass(typeof(OversBowled))]
    [PexAllowedExceptionFromTypeUnderTest(typeof(ArgumentException), AcceptExceptionSubtypes = true)]
    [PexAllowedExceptionFromTypeUnderTest(typeof(InvalidOperationException))]
    public partial class OversBowledTest
    {
        [PexMethod]
        public short OversGet([PexAssumeUnderTest]OversBowled target)
        {
            short result = target.Overs;
            return result;
            // TODO: add assertions to method OversBowledTest.OversGet(OversBowled)
        }
        [PexMethod]
        public void NextBall([PexAssumeUnderTest]OversBowled target, CBall ball)
        {
            target.NextBall(ball);
            // TODO: add assertions to method OversBowledTest.NextBall(OversBowled, CBall)
        }
        [PexMethod]
        public short LegalBallsGet([PexAssumeUnderTest]OversBowled target)
        {
            short result = target.LegalBalls;
            return result;
            // TODO: add assertions to method OversBowledTest.LegalBallsGet(OversBowled)
        }
        [PexMethod]
        public string GetOversNBallsBowled([PexAssumeUnderTest]OversBowled target)
        {
            string result = target.GetOversNBallsBowled();
            return result;
            // TODO: add assertions to method OversBowledTest.GetOversNBallsBowled(OversBowled)
        }
        [PexMethod]
        public OversBowled Constructor()
        {
            OversBowled target = new OversBowled();
            return target;
            // TODO: add assertions to method OversBowledTest.Constructor()
        }
    }
}
